package condominio.negocio;

import java.util.Collection;

import condominio.dao.ViviendaDAO;
import condominio.excepcion.DAOExcepcion;
import condominio.modelo.TipoVivienda;
import condominio.modelo.Usuario;
import condominio.modelo.Vivienda;

public class GestionViviendas {

	public Collection<Vivienda> listar() throws DAOExcepcion {
		ViviendaDAO dao = new ViviendaDAO();
		return dao.listar();
	}
	
	public void insertar(String Var_ubicacion, String Var_metraje, int Var_residente, int Var_TipoVivienda, String Var_numero, String Var_fecha)
			throws DAOExcepcion {
		ViviendaDAO dao = new ViviendaDAO();
		
        Usuario user = new Usuario();
        user.setIdUsuario(Var_residente);
        
        TipoVivienda tipovivienda = new TipoVivienda();
        tipovivienda.setIdTipoVivienda(Var_TipoVivienda);
		
		Vivienda vo = new Vivienda();
		vo.setUbicacion(Var_ubicacion);
		vo.setMetraje(Var_metraje);
		vo.setResidente(user);
		vo.setTipovivienda(tipovivienda);
		vo.setNumero(Var_numero);
		vo.setFechaRegistro(Var_fecha);
		dao.insertar(vo);
	}

	public Collection<Vivienda> buscarPorNumeroVivienda(String numero) throws DAOExcepcion {
		ViviendaDAO dao = new ViviendaDAO();
		return dao.buscarPorNumero(numero);
	}

	public void eliminar(int Codigo) throws DAOExcepcion {
		ViviendaDAO dao = new ViviendaDAO();

		dao.eliminar(Codigo);
	}

	public void actualizar(int Var_Codigo, String Var_metraje)
			throws DAOExcepcion {
		ViviendaDAO dao = new ViviendaDAO();

		Vivienda vo = new Vivienda();
		vo.setIdVivienda(Var_Codigo);
		vo.setMetraje(Var_metraje);

		dao.actualizar(vo);

	}

	public Vivienda obtener(int Var_CodigoVivienda) throws DAOExcepcion {
		ViviendaDAO dao = new ViviendaDAO();

		return dao.obtener(Var_CodigoVivienda);

	}


	
}
